const express = require('express');
const path=require('path')
const router = require('./router/router.js');
const frontRouter=require('./router/frontRouter')
const session =require('express-session');
const moment = require('moment');
//模板
const artTemplate = require('art-template'); 
const express_template = require('express-art-template');
let checkuser=require('./controller/checkuser')
const app=express();
//静态托管
app.use('/static',express.static(path.join(__dirname,"static")))
//post 请求
app.use(express.json()) // for parsing application/json
app.use(express.urlencoded({ extended: true })) // for parsing application/x-www-form-urlencoded

//设置cookie
let options={
    name:"sessionID",
    secret:"#%^&*^&*()GHJ",
    cookie: { 	
        path: '/' ,  // 默认为'/'，即域的根路径。
        httpOnly: true,  // 默认为true,设置cookie只读，即不能通过document.cookie来获取,更加安全,可以预防xss工具
        secure: false,  // 设为true可适用于https网站的安全传输。若域名是http开头，网站只能设为false，否则cookie不写携带到后台服务器中。
        maxAge: 60000*24 , //session会话保存在cookie中的有效期，单位：毫秒值， 默认为null,即设置的当前会话永不失效，一般都是需要设置有效期的，如php中的session有效期默认为24分钟。
        //设置有效期为24分钟，说明：24分钟内，不访问就会过期，如果24分钟内访问了。则有效期在初始化为24分钟。
    } 
}
app.use(function(req,res,next){
        res.setHeader("Access-Control-Allow-Origin","*")
        next();
})
app.use('/api',frontRouter)
app.use(session(options))
//校验账号密码
app.use(checkuser)

//配置模板的路径
app.set('views', __dirname + '/views/');
app.engine('html', express_template); 
app.set('view engine', 'html');

//过滤器
artTemplate.defaults.imports.dateFormat = function(time,format = 'YYYY-MM-DD  hh:mm'){
    return moment.utc(time).utcOffset(8).format(format)
}
artTemplate.defaults.imports.dateFormat2 = function(time,format = 'YYYY-MM-DD  hh:mm'){
    return moment.unix(time).format(format)
}
artTemplate.defaults.imports.showOrhide = function(status){
    if(status == 1){
        return "显示";
    }else{
        return "隐藏";
    } 
}
artTemplate.defaults.imports.removeHtml = function(content){
    content? content:content=""
  return content.replace( /(\<.*?\>)/g,"").slice(0,15) 
}
app.use(router);

app.listen(3200,()=>{
    console.log('火箭发射')
    console.log('命中目标')
})
